package alipushclient

type AndroidNotice struct {
	Action               string
	AppKey               string
	Target               string
	TargetValue          string
	Title                string
	Summary              string
	AndroidExtParameters map[string]interface{}
}

func (n *AndroidNotice) SetAction(action string) {
	n.Action = action
}

func (n *AndroidNotice) SetAppKey(appKey string) {
	n.AppKey = appKey
}

func (n *AndroidNotice) SetTarget(target, targetValue string) {
	n.Target = target
	n.TargetValue = targetValue
}

func (n *AndroidNotice) SetTitle(title string) {
	n.Title = title
}

func (n *AndroidNotice) SetSummary(summary string) {
	n.Summary = summary
}

func (n *AndroidNotice) ExtrasAdd(key string, value interface{}) {
	if n.AndroidExtParameters == nil {
		n.AndroidExtParameters = make(map[string]interface{})
	}
	n.AndroidExtParameters[key] = value
}

type IOSNotice struct {
	Action           string
	AppKey           string
	Target           string
	TargetValue      string
	Env              string
	Summary          string
	Ext              string
	IOSExtParameters map[string]interface{}
}

func (n *IOSNotice) SetAction(action string) {
	n.Action = action
}

func (n *IOSNotice) SetAppKey(appKey string) {
	n.AppKey = appKey
}

func (n *IOSNotice) SetTarget(target, targetValue string) {
	n.Target = target
	n.TargetValue = targetValue
}

func (n *IOSNotice) SetEnv(env string) {
	n.Env = env
}

func (n *IOSNotice) SetSummary(summary string) {
	n.Summary = summary
}

func (n *IOSNotice) SetExt(ext string) {
	n.Ext = ext
}

func (n *IOSNotice) ExtrasAdd(key string, value interface{}) {
	if n.IOSExtParameters == nil {
		n.IOSExtParameters = make(map[string]interface{})
	}
	n.IOSExtParameters[key] = value
}
